home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus 1995 #5 & #6
/
Amiga Plus CD - 1995 - No. 5 and 6.iso
/
pd
/
serien
/
purity
/
nr.27
/
wbarg
/
unit
< prev
next >
Wrap
Text File
|
1995-04-23
|
2KB
|
77 lines
UNIT WBarg;
{ Unit, die die Parameterübergabe über die Workbench (Mit SHIFT) }
{ vereinfacht. }
{ }
{ © 27.01.1993 by Røgersøft / System M }
{ Michael Klein }
{ Am Wasserturm 6 }
{ 67346 Speyer }
{ }
{ Zur Veröffentlichung auf der Purity freigegeben. }
{ Bei Benutzung in eigenen Programmen bitte meinen Namen in der }
{ Anleitung erwähnen und mir das Programm schicken. }
{$ Projekt MyTools }
INTERFACE
{$ include 'exec.lib','Workbench/icon.h'}
FUNCTION WBArgNum:INTEGER;
FUNCTION GetWBArg(Argumentnummer:INTEGER):STR;
FUNCTION OpenIconLib:BOOLEAN;
PROCEDURE CloseIconLib;
IMPLEMENTATION
{$ include 'dos.lib','Workbench/startup.h'}
Type argarraytyp=^ARRAY[1..MaxInt] OF WBarg;
VAR WBmsgPtr : p_WBStartup;
IconBase : PTR;
p_argarray : argarraytyp;
FUNCTION OpenIconLib;
BEGIN
Iconbase:=OpenLibrary(ICONNAME,0);
IF IconBase=NIL THEN OpenIconLib:=FALSE ELSE OpenIconLib:=TRUE;
END;
PROCEDURE CloseIconLib;
BEGIN
IF IconBase<>NIL THEN CloseLibrary(IconBase);
IconBase:=NIL;
END;
FUNCTION WBArgNum;
BEGIN
IF OpenIconLib THEN
BEGIN
WBmsgPtr:=StartupMessage;
IF FromWB THEN WBArgNum:=WBMsgPtr^.sm_NumArgs
ELSE WBArgNum:=-32768;
END
ELSE WBArgNum:=-32768;
END;
FUNCTION GetWBArg;
VAR VLock:BPTR;
BEGIN
GetWBArg:=NIL;
IF OpenIconLib THEN
BEGIN
WBmsgPtr:=StartupMessage;
IF (Argumentnummer<=WBArgnum) and (WBArgnum>0) THEN BEGIN
p_argarray:=argarraytyp(wbmsgptr^.sm_ArgList);
GetWBArg:=p_argarray^[Argumentnummer].wa_Name;
Vlock:=currentdir(p_argarray^[Argumentnummer].wa_lock);
{^--- um in das passende Verzeichnis zu wechseln }
END;
END;
END;
BEGIN
IconBase:=NIL;
END.